package org.nnxy.foodboot.service;

import org.nnxy.foodboot.entity.PopularRecipe;
import org.nnxy.foodboot.entity.Recipe;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * 热门食谱服务接口
 */
public interface PopularRecipeService extends IService<PopularRecipe> {
    
    /**
     * 获取热门食谱列表
     * @param limit 限制条数
     * @return 热门食谱列表
     */
    List<Recipe> getPopularRecipes(Integer limit);
    
    /**
     * 更新食谱热门指标
     * @param recipeId 食谱ID
     * @param viewIncrement 浏览增量
     * @param likeIncrement 点赞增量
     * @param collectIncrement 收藏增量
     */
    void updateRecipePopularityMetrics(Long recipeId, Integer viewIncrement, 
                                      Integer likeIncrement, Integer collectIncrement);
    
    /**
     * 刷新所有热门食谱排名
     */
    void refreshPopularRecipeRanks();
} 